package com.woniuxy.third.entity;

import com.woniuxy.third.entity.subject.FirstSubject;
import com.woniuxy.third.enums.CourseLiveEnum;
import com.woniuxy.third.enums.CourseStatusEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Data
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)
public class Course {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty("课程ID")
    private int id;
    @ApiModelProperty("课程标题")
    private String name;
    @ApiModelProperty("销售价格")
    private BigDecimal price;
    @ApiModelProperty("课程是否免费")
    private String isFree;
    @ApiModelProperty("浏览量")
    private int visitednum;
    @ApiModelProperty("点赞数")
    private int praisednum;
    @ApiModelProperty("课程教师id")
    private int teacherid;
    @ApiModelProperty("课程所属学校id")
    private int schoolid;
    @ApiModelProperty("课程简介")
    private String description;
    @ApiModelProperty("课程教学目标")
    private String goal;
    @ApiModelProperty("课程状态id Draft未发布 OnShow进行中 Finished已完成")
    private CourseStatusEnum courseStatus;
    @ApiModelProperty("一级课程学科ID")
    private int FirstSubjectId;
    @ApiModelProperty("二级课程学科ID")
    private int SecondSubjectId;
    @ApiModelProperty("课程起始时间")
    private Date start;
    @ApiModelProperty("课程结束时间")
    private Date end;
    private Date cstart;
    private Date cend;
    @ApiModelProperty("课程参考书目id")
    private int referenceid;
    @ApiModelProperty("课程评价id")
    private int assessmentid;
    @ApiModelProperty("课程类型：直播或录播")
    private CourseLiveEnum courseLive;
    @ApiModelProperty("课程章节id")
    private int chapterid;
    @ApiModelProperty("教师对象")
    private Teacher teacher;
    @ApiModelProperty("课程类型对象")
    private FirstSubject firstSubject;
    @ApiModelProperty("图片")
    private String img_source;
    private List<Chapter> chapters;
    private String video_source;
}
